home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 5 / Apprentice-Release5.iso / Source Code / SDKs / Word Services SDK 1.0.6 / Word Services XCMD 1.0d2 / Sources / XCMDTestbed.c < prev   
Encoding:
C/C++ Source or Header  |  1996-04-28  |  1.3 KB  |  73 lines  |  [TEXT/CWIE]

  1. // XCMDTestbed.c
  2. // Copyright ©1996 Michael D. Crawford.  All Rights Reserved.
  3. // 20 Apr 96 Michael D. Crawford
  4.  
  5. #include <HyperXCMD.h>
  6.  
  7. #include "TestBedPrefix.h"
  8.  
  9. typedef pascal void (*tEntryPoint)( XCmdPtr pBPtr );
  10.  
  11. OSErr InitXCmdBlock( XCmdPtr pBPtr );
  12. pascal void CallBackEntry( XCmdPtr pBPtr );
  13.  
  14. void main( void )
  15. {
  16.     struct XCmdBlock pB;
  17.     OSErr    err;
  18.     
  19.     err = InitXCmdBlock( &pB );
  20.     if ( err )
  21.         return;
  22.     
  23.     CallXCmd( &pB );    
  24.     
  25.     return;
  26. }
  27.  
  28. OSErr InitXCmdBlock( XCmdPtr pBPtr )
  29. {
  30.     short    i;
  31.     
  32.     pBPtr->paramCount = 3;
  33.     
  34.     for ( i = 0; i < 3; i++ ){
  35.         pBPtr->params[ i ] = NewHandle( 256 );
  36.         if ( pBPtr->params[ i ] == (Handle)NULL ){
  37.             DebugStr( "\pNewHandle failed" );
  38.             return memFullErr;
  39.         }
  40.     }
  41.     
  42.     // creator code includes null terminator - 'SPWE\0'
  43.     
  44.     BlockMoveData( "SPWE", *( pBPtr->params[ 0 ] ), 5 );
  45.     BlockMoveData( "1", *( pBPtr->params[ 1 ] ), 2 );    // Field number
  46.     BlockMoveData( "1", *( pBPtr->params[ 2 ] ), 2 );    // Card number
  47.     
  48.     for ( i = 3; i < 16; i++ ){
  49.         pBPtr->params[ i ] = (Handle)NULL;
  50.     }
  51.     
  52.     pBPtr->returnValue = (Handle)NULL;
  53.     
  54.     pBPtr->passFlag = NULL;
  55.     pBPtr->entryPoint = (Ptr)CallBackEntry;
  56.     pBPtr->request = 0;
  57.     pBPtr->result = 0;
  58.  
  59.     for ( i = 0; i < 8; i++ ){
  60.         pBPtr->inArgs[ i ] = (long)NULL;
  61.     }
  62.  
  63.     for ( i = 0; i < 4; i++ ){
  64.         pBPtr->outArgs[ i ] = (long)NULL;
  65.     }
  66.     
  67.     return noErr;
  68. }
  69.  
  70. pascal void CallBackEntry( XCmdPtr pBPtr )
  71. {
  72.     return;
  73. }